1. Field of the Invention
The present invention relates to a three-dimensional model generation system, and more particularly to a three-dimensional model generation system which is capable of saving data of an edge erased from a three-dimensional model upon filleting the edge, to thereby make it possible to utilize data of the edge.
2. Description of the Related Art
Conventionally, in the scenes of labor for creating designs of objects, computer aided design (CAD) systems are used as essential tools for saving labor and improving efficiency of designing operations. For instance, in the field of mechanical design and the like, there are widely used three-dimensional CAD systems which are capable of dealing with data of three-dimensional geometric objects as geometry data of three-dimensional objects having geometric properties similar to those of real objects.
In general, the technique of using computational geometry to define geometric objects is called xe2x80x9cgeometric modeling,xe2x80x9d and software for geometric modeling is called a modeler. Conventional modelers for use in three-dimensional CAD systems which deal with geometric objects include a free-form surface modeler suitable for designing free-form surfaces, e.g., those of a car body, and a solid modeler generally suitable for designing machines and structures. A model generated by the free-form surface modeler is called a free-form surface model, while a model by the solid modeler is called a solid model.
To fillet an existing edge is an important function provided by the three-dimensional CAD system in forming a three-dimensional geometric object by three-dimensional solid modeling. A parametric (variational) modeling capability is also an important function used in three-dimensional modeling for defining a geometric object based on values of dimensions with reference to an edge. The CAD system provides another important function of generating a two-dimensional design drawing based on a three-dimensional model generated.
FIG. 11 shows an example of conventional three-dimensional modeling carried out by a three-dimensional CAD system. A three-dimensional rectangular parallelepiped model 100 shown in the figure is generated at the outset. In order to fillet an edge 102 of the three-dimensional model 100, first, the edge 102 to be filleted is designated, and then a radius of a fillet to be generated is specified. As a result, a pictorial display of the three-dimensional model 100 on a display screen makes a transition in a direction indicated by an arrow 104 to a state of the model in which a fillet 106 is generated on the three-dimensional model 100 and at the same time the edge 102 is erased from the same.
As mentioned above, the three-dimensional CAD system has the parametric modeling capability of creating a new similar model by changing parameters which define the dimensions of each geometric object, the number of such objects, etc., of a model (parametric model). The parametric modeling capability includes a parametric entity function, e.g., that of defining a geometric object based on parameters associated with dimensional values defined with reference to an existing edge. To utilize this particular function in generating, e.g., a cylindrical shape representative of a through hole extending through the three-dimensional model 100, it is required that the edge is an existing geometric entity of the model 100. In the example shown in FIG. 11, however, the edge 102 has been erased when it was changed into the fillet 106. Therefore, it is basically impossible to directly utilize this particular parametric entity function of the CAD system after the associated geometric entity has been erased.
In such a case, the conventional CAD system is required to first erase the fillet 106 generated, extend two planes formerly defining the edge 102 to thereby regenerate an edge at a location whereby they meet, and thereafter define parameters associated with the shape by specifying dimensional values defined with reference to the regenerated edge.
Further, some CAD systems are provided with a function of xe2x80x9ctemporarily erasingxe2x80x9d a generated fillet. According to this function, the existing fillet is temporarily erased, and then restored afterward. In this case as well, it is required to regenerate an edge after having erased the fillet temporarily.
In any case, in order to define parameters of a geometric object or shape defined with reference to an edge erased as a result of generation of the fillet 106, it is required to once erase the generated fillet 106 from the model 100 in some way or other. Therefore, the process proceeds in a direction indicated by an arrow 108 to regenerate the edge 102 which should have existed. Thereafter, the parametric entity function is utilized to generate a cylindrical shape by designating dimensional values defined with reference to the edges 102, 112 and a radius of the cylindrical shape 114. Then, the present process proceeds in a direction indicated by an arrow 116 to change the edge 102 into the fillet 106 by the filleting function again.
Further, the aforementioned function of a creating two-dimensional drawings from a three-dimensional model is often used to produce a design drawing. The two-dimensional drawing is generated by projecting the three-dimensional model onto a plane, and then dimension lines and the like are added to the generated drawing for completion of the same.
FIGS. 12(A), 12(B) and 12(C) illustrate an example of conventional drawing generation. FIG. 12(A) shows a state of a model in which fillets are not generated yet, while FIG. 12(B) shows a state of the model in which the fillets have been generated. FIG. 12(C) shows a sample of a two-dimensional drawing generated from the FIG. 12(A) model. Let it be assumed that the three-dimensional model 120 has already been generated as shown in FIG. 12(A), and edges 122, 124 are changed into fillets 126, 128, respectively. When the fillets 126, 128 are generated, the two edges 122, 124 are erased as shown in FIG. 12(B). If the three-dimensional model 120 in this state is projected in a direction indicated by an arrow 130 for generation of a two-dimensional drawing, a geometric FIG. 132 having both upper corners rounded is plotted as shown in FIG. 12(C). Afterward, dimension lines, dimension values, etc. are added to the generated projection drawing for completion of the two-dimensional drawing.
In this case, it may be desired that the dimension line is drawn to represent a dimension between the edges 122, 124 which existed before generation of the fillets 126, 128. However, the edges 122, 124 have been erased as a result of generation of the fillets 126, 128, so that when the three-dimensional model 120 is projected, the edges 122, 124 with reference to which the dimension line should be drawn are naturally not plotted on the two-dimensional drawing. In such a case, each dimension line is drawn between positions at which the edges are assumed to have existed.
As described above, in the conventional three-dimensional solid modeling, once an edge is filleted, the edge is deleted from the three-dimensional model, and hence, when the edge is needed afterward for performing the parametric entity function or the two-dimensional drawing generation function, it is required to regenerate the edge after removing the fillet, which makes operations troublesome. Further, although such an edge is regenerated by analogy of existing geometric entities, accurate analogy is often extremely difficult or even impossible, when the edge to be regenerated is a curved line.
It is an object of the invention to provide a three-dimensional model generation system which enables data of a xe2x80x9cformer edgexe2x80x9d to be utilized as required, which has been erased from a three-dimensional model as a result of generation of a fillet.
To attain the above object, the present invention provides a three-dimensional model generation system for generating three-dimensional models, comprising geometry-generating/editing means that is capable of changing an edge of a three-dimensional model into a fillet or a chamfer, three-dimensional data storage means for storing geometry data items associated with respective features generated or edited by the geometry-generating/editing means, on a feature-by-feature basis, and when any of the respective features is a fillet or a chamfer, further storing data concerning an edge erased as a result of generation of the any of the features, as data of an former edge associated with the fillet or the chamfer, feature management means for obtaining any of the geometry data items stored in a state associated with a corresponding one of the features from the three-dimensional data storage means, in response to a request sent from the geometry-generating/editing means, for obtaining three-dimensional data of the any of the features, and former edge data management means for obtaining the data of the former edge from the three-dimensional data storage means in response to a request sent from the geometry-generating/editing means to the feature management means, for obtaining three-dimensional data concerning the feature of the fillet or the chamfer, and generating three-dimensional display data from the data of the former edge.
The above and other objects, features and advantages of the present invention will become apparent from the following description when taken in conjunction with the accompanying drawings which illustrate a preferred embodiment of the present invention by way of example.